home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 November / EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso / earcd / util / misc / zxam16b.lha / ZXAM Spectrum / LEEME!! < prev    next >
Text File  |  1995-01-18  |  15KB  |  267 lines

  1.             Readme del ZXAM Spectrum Emulator v1.6b
  2.             ---------------------------------------
  3.           
  4.    Lo  que  tienes  delante  es un emulador del entrañable Sinclair ZX Spectrum
  5. 48k. Necesita chips AGA, WB 3.0+ y 68020+ (WB 2.04+, 68020+ y cualquier tipo de
  6. chips  en la versión OCS/ECS). Lee el ZXAM_Spectrum.DOCesp para información más
  7. detallada.
  8.  
  9.    Este  programa  es SHAREWARE. Esto sigifica que tienes un mes de tiempo para
  10. probarlo,  y  si  te  gusta  deberás  mandar 15 US$ (unas 2000 pts) al autor. A
  11. cambio  recibirás  la  última  versión  (probablemente  la  versión 128k). Esta
  12. versión  SHAREWARE  puede circular libremente siempre que se incluyan todos los
  13. ficheros  asociados al programa. Está prohibido utilizar el programa para fines
  14. comerciales,  o  sea  que  solo se pueden cargar los gastos normales de copia y
  15. envio  que se cargan habitualmente en las librerias de Dominio Público. También
  16. puedes meterlo en BBS o incluirlo en discos de revista.
  17.  
  18.    Para contactar con el autor:
  19.    
  20.    Correo normal:
  21.                 Antonio J. Pomar Rosselló
  22.                C/ Alférez Cerdá  nº 13-bajos
  23.               Palma de Mallorca 07014
  24.                  Baleares (España)
  25.  
  26.    BBS:
  27.     Déjame el mensaje a nombre de TONIACE en TANIT BBS-IBIZA (971-392829)
  28.  
  29.    FidoNet:
  30.                 Toni Pomar (2:343/119.80)
  31.    AmigaNet:
  32.                 Toni Pomar (39:190/1.80)
  33.    InterNet:
  34.                 tpomar@penedes.mazanet.encomix.com
  35.  
  36.    A partir de  este punto el  texto contiene una serie de  añadidos que se han
  37. ido acumulando a partir de la  versión 1.3 ß del emulador.  Es como una especie
  38. de Historia  del  desarrollo  del  emulador  pero  referente  a  las  versiones
  39. distribuidas y que explica el 'por que' de algunas cosas.
  40.  
  41.  
  42.       >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.3 ß <<<<<<<<<<<<<<<<<<
  43.  
  44. UNA DE INDIOS...
  45.  
  46.    Mis  duras investigaciones  me han llevado  a  conseguir un gran logro nunca
  47. alcanzado en la historia de la informática, que es: Poder almacenar y recuperar
  48. datos binarios ¡en simples cintas de audio! (del standard  "compact cassette").
  49. A   esta     nueva    tecnologia   de   almacenamiento   la   llamo   "slow-ish
  50. semi-retrievable  audio  FSK  data  stream",   que  se  traduce  como   "chorro
  51. lentorrillo  semirrecuperable  y  audible de datos  transformados  en pitidos y
  52. chirridos".  Para hacer  este avance tecnológico  accesible al grán  público he
  53. decidido  distribuir  la versión  1.3 ß  del  emulador  de  Spectrum  con  esta
  54. posibilidad incorporada.  Nunca  más te verás  forzado a usar  los ultrarápidos
  55. discos  duros  (puaj!)  o  las  rápidas  disqueteras (aarg!).  Ahora ya  puedes
  56. cargar  un juego  de forma  que te  dé tiempo de ir  al baño mientras se carga,
  57. o leer el Quijote, o, simplemente, envejecer decrépitamente ante la pantalla.
  58.  
  59.    Como todos los grandes  descubrimientos de la humanidad, estoy seguro de que
  60. alguien   hará   un   uso  incorrecto  de   mi  descubrimiento   (como  ya   lo
  61. intentaron con  mi consola  WOPR,  alias  "Joshua",  compatible  con NES), pero
  62. apelo al poco de  conciencia que te queda para  que desistas de hacerlo. Ten en
  63. cuenta que la  tecnologia que tienes en tus manos puede decidir el destino  del
  64. mundo (como la WOPR :-)....
  65.  
  66.  
  67.  
  68.  
  69. VA DE VERAS
  70.  
  71.    El  motivo principal  para  la circulación de esta versión es  (como explico
  72. arriba ;-)  la incorporación de la posibilidad de LOAD y SAVE  a cinta.  Aunque
  73. estas  opciones funcionan  bién,  esta versión del emulador ha sido distribuida
  74. por  la  demanda popular  de  la  carga  desde  cinta,  pero  no es una versión
  75. definitiva  debido  a  que  el  emulador   contiene  además   unos  ensayos  de
  76. estabilización de velocidad para ordenadores sobrados de potencia (que no es mi
  77. caso!). En cuanto la tenga lista haré circular una versión mucho más definitiva
  78. con un  sistema de  estabilización  de velocidad  mucho más preciso  que el que
  79. incluye  la versión 1.3 ß. Los aspectos modificados respecto a la versión 1.2 ß
  80. son:
  81.  
  82.  
  83.  
  84. LOAD DE CINTA:  ¿Significa esto que puedo pasar a disco mi colección de juegos?
  85. Pues... solo si usa la rutina de carga de la ROM, o sea, ni Turbos ni programas
  86. con  cargadores extraños (como el Commando, el Deflektor, etc..).  La rutina de
  87. carga  que  incorpora el  emulador es un hábil  "parchecillo"  de la  rutina de
  88. carga  de  la  ROM,  a  la  que  no  substituye  totalmente  si  no solo en sus
  89. secciones  más críticas.  Un 90% del código que se ejecuta  al cargar de  cinta
  90. es  el original  de la ROM  del Spectrum. Debido a esto, se comporta como si de
  91. un Spectrum se tratara,  o sea,  puedes hacer BREAK con el espacio y verás como
  92. cargan los  pixels de las pantallas y  los atributos (que  hacian  ese  MEEEEEC
  93. tan  característico  [snif...] ).  El FLASH sigue funcionando durante la carga,
  94. también.  Y todo  esto funciona perfectamente incluso en un A1200 sin FAST y en
  95. modo COLOR!!.
  96.  
  97. Las LIMITACIONES del parche son:
  98.  
  99.    -Las rayas del borde no son perfectas, pero casi, debido a interferencias
  100.     entre  la CPU y  la copperlist.  Sería posible  hacerlo  perfecto,  pero
  101.     supondria  más trabajo para la CPU,  que ya está en sus límites,  y,  en
  102.     consecuencia, ralentizaria ligeramente el  emulador.  Creo que  para ver
  103.     mejor la rayitas de carga no vale la pena ralentizar el emulador.
  104.     
  105.    -El sonido  de la cinta  solo se oye  DURANTE LA CARGA,  no al buscar  la
  106.     cabecera  del  programa.  Esto  significa  que  tendrás  que  buscar  el
  107.     principio  del programa  desconectando  el cassette del ordenador,  para
  108.     conectarlo cuando hayas encontrado la cabecera. Emular desde software el
  109.     puente que  tenia el Hardware del Spectrum  entre las tomas MIC y EAR es
  110.     demasiado desperdicio  de potencia para algo  que solo vas a usar cuando
  111.     cargues  desde  cinta.  Piensa  que,  aunque el emulador  puede cargar y
  112.     grabar con cinta AUN puede cargar/grabar programas en disco...
  113.     
  114.    -NECESITA  INTERFACE  PROPIO:  Aunque yo no  considero que  ésto sea  una
  115.     limitación,  ya que el interface que he diseñado es  MUCHO  más barato y
  116.     práctico  que  un  sampleador. Este  interface  se conecta al puerto del 
  117.     Joystick,  y se puede poner y quitar  con el ordenador en marcha.  Junto
  118.     con el emulador encontrarás una pantalla que describe el interface.  Los
  119.     2 (si DOS!) componentes del  interface están ahí simplemente para que el
  120.     ordenador no  se estropee si le  subes demasiado el volumen al cassette.
  121.     Como verás,  el interface  es tan  simple  que  "da asco verlo".  Lo  he
  122.     diseñado así  por que se  supone que  no lo usarás  constantemente, pero
  123.     si quieres tenerlo conectado siempre puedes ponerle una conexión de paso
  124.     (un macho DB-9) a la  salida para tener al mismo tiempo el cassette y el
  125.     joystick  conectados.   Además,  con  este  interface  puedes  dejar  la
  126.     impresora permanentemente conectada, no como con el sampler.
  127.    
  128.    -Al ser un parche de  la rutina de la ROM,  solo cargarán  programas  que
  129.     usen dicha rutina. O sea, olvidate de los Turbos (de momento...;-).
  130.    
  131.    -En sistemas de "potencia moderada"  (como el mio) no conviene  toquetear
  132.     mucho el teclado mientras cargas,  a menos que quieras hacer BREAK,  por
  133.     que cada pulsación de tecla produce una interrupción,  que desestabiliza
  134.     la carga y puede provocar errores.
  135.  
  136.    LLegados a  este punto debo  confesar que la fiabilidad del parche es  mucho
  137. mayor de lo que yo tenia previsto en un principio. Durante las pruebas, conecté
  138. la entrada de audio  del emulador al cassette incorporado en mi Spectrum +2A, e
  139. intentaba cargar al  mismo tiempo el mismo programa en el +2A y en el 1200.  Mi
  140. intención era encontrar algún programa que el +2A cargara pero el 1200 no, para
  141. ajustar las temporizaciones del parche.  Mi sorpresa fué mayúscula al comprobar
  142. que el que no cargaba  correctamente todos los programas  era el +2A,  mientras
  143. que el 1200 se tragaba  perfectamente lo que le echaran. ¡Es de las pocas veces
  144. que pruebo algo nuevo y funciona a la primera!. En total he pasado 83 programas
  145. a disco  durante  las pruebas (algunos de éstos no habian querido cargar con el
  146. Spectrum Emulator v1.7 ;-)
  147.  
  148.  
  149.  
  150. SAVE HACIA CINTA: Bueno... este ha sido muy fácil. Ni siquiera es un parche, ya
  151. que es el código Z80 de la ROM la que lo hace todo. Lo unico que yo he hecho ha
  152. sido "frenar"  la rutina  Z80 para que no  corriera demasiado.  Lo mismo que se
  153. especifica en LOAD respecto al teclado y al borde se puede aplicar al SAVE. Los
  154. datos  grabados por el  emulador han sido cargados sin problemas  por el propio
  155. emulador y por mi ZX Spectrum +2A.
  156.  
  157.  
  158.  
  159. SONIDO:  El emulador incorpora  un estabilizador  "experimental" de sonido. Con
  160. este estabilizador ha sido posible el SAVE en tiempo real (puro Z80), aparte de
  161. que  el BEEP es ahora  también tiempo real,  y la música de  muchos  juegos  ha
  162. mejorado  muchísimo  (como  los  de  ULTIMATE).  Sin embargo,  otros juegos han
  163. empeorado  un poco  (como  el  3 Weeks  in  Paradise),  o  se  han  ralentizado
  164. ligeramente (un 3% aprox).  De todas formas, este "estabilizador" no es más que
  165. experimental. Espero poner a punto uno mucho más preciso.
  166.  
  167.  
  168.       >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.3b ß <<<<<<<<<<<<<<<<<<
  169.  
  170.    Esta  versión era  en realidad el  principio  de la 1.4 ß,  pero recibí  una
  171. carta-disco  de un usuario  pidiéndome la  última versión  (solo habia visto la
  172. horrible versión 1.2 ß en la party de Cádiz, ¡¡Y yo voy y me la pierdo!!).  Por
  173. esta razón decidí coger el emulador tal y como estaba y montarlo  en el paquete
  174. de distribución (¡no podia mandarle la versión 1.3 ß por que no era la mejor!).
  175. Para los que  tengan la versión 1.3 ß esta versión es una pequeña  mejora en la
  176. velocidad de  algunos juegos, además de incluir un transfer para  pasar a cinta
  177. los juegos que tienes en disco y poder cargarlos así en un Spectrum real.  Para
  178. los que  tengan  la  versión  1.2 ß,  les aconsejo que  la borren  AHORA  y  la
  179. substituyan por la 1.3b ß (¡ESTA!).
  180.  
  181.    En el periodo del  1-Agosto-94 al  20-Agosto-94 no he modificado el emulador
  182. por que en ese periodo he estado "enganchado" a un modem que me habia dejado un
  183. amigo,  y no he tocado el emulador para nada.  Dentro de poco  tendré mi propio
  184. modem y daré caña por la FidoNET.
  185.  
  186.  
  187.       >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.4 ß <<<<<<<<<<<<<<<<<<
  188.  
  189.             (Esta versión no ha sido distribuida)
  190.  
  191.             
  192.        >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.5 <<<<<<<<<<<<<<<<<<
  193.  
  194.    Esta  es la primera  versión que  ha dejado  de ser ß.  Esto supone  que  es
  195. razonablemente  estable  (a mi no se me cuelga  desde hace meses,  y eso que le
  196. hago  todas las  perrerias  que puedo  :-),  que la  emulación  es  (aunque  no
  197. perfecta)  más o menos  completa  y que la  ventana de interface  es totalmente
  198. operativa,  o sea que todo lo que sale en la ventana sirve para algo coherente.
  199. Esto  no significa  que deje de desarrollar el emulador.  Seguiré  mejorando el
  200. interface y la emulación (NO TE QUEPA DUDA!!).
  201.  
  202.    Esta versión no incorpora ninguna mejora en la emulación (estoy pendiente de
  203. conseguir  la memoria  FAST para las  pruebas de tiempo real) pero sí en el uso
  204. del  programa.  Tiene un  puerto ARexx  con 44  funciones  que  permiten  hacer
  205. cualquier cosa, como grabar  la pantalla en IFF,  ensamblar/desensamblar código
  206. Z80 sobre la memoria  del Spectrum, convertir el formato de  grupos de ficheros
  207. o sacar  los listados BASIC  de la memoria del spectrum.  En una versión futura
  208. tengo previsto  añadir la posibilidad de ejecutar  código Z80 paso a paso.  Los
  209. scripts  ARexx se arrancan desde la ventana de control mediante un requester de
  210. ficheros.
  211.  
  212.    Además ya puede comprimir los programas  con powerpacker  en el  momento  de
  213. grabarlos a disco, puede seleccionar dos paths separados (uno para carga y otro
  214. para grabación), el requester de ficheros de adapta a la altura de la pantalla,
  215. la ventana del emulador es una appwindow,  el emulador admite  la carga de ROMs
  216. externas  (añadido en  la versión 1.4 ß) y  permite ejecutar  comandos  antes y
  217. después  de  la  emulación  (ideal  para  activar/desactivar  los  cachés   del
  218. procesador).
  219.  
  220.    Si quieres  ensamblar código Z80 sobre  la memoria del  Spectrum solo  debes
  221. hacer el script ARexx  adecuado y usar un  ensamblador  cruzado de Z80 (como el
  222. CAZ de Carsten Rose, que está en el CD-ROM FrozenFISH).
  223.  
  224.    Además he incluido con el  paquete una versión OCS/ECS del emulador.  Es una
  225. versión  de  prueba  pero  creo  que  funciona  bién.  En  caso  de  problemas,
  226. comunícamelo para que pueda arreglarlos.
  227.  
  228.  
  229.        >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.6 <<<<<<<<<<<<<<<<<<
  230.       
  231.    Esta  versión es la primera SHAREWARE. Esto es debido a la burrada de tiempo
  232. que  me  absorbe  el  emulador,  y  a  los  gastos  que  me  supone  distribuir
  233. adecuadamente éste para que llegue a los usuarios, y conseguir información para
  234. el   desarrollo  del  emulador.  Con  esta  contribución  estás  asegurando  el
  235. desarrollo y mejora posterior del emulador.
  236.  
  237.    Esta   nueva   versión  (1.6)  añade  un  comando  ARexx  para  desensamblar
  238. instrucciones  Z80  de  la  memoria  del  spectrum,  puede desviar los comandos
  239. LOAD/SAVE  de  la  ROM del spectrum hacia disco (ideal para juegos multicarga),
  240. admite  la  carga de programas en formato Z80 (tanto el formato antiguo como el
  241. moderno),  se  pueden  arrancar  juegos  desde  el  icono de estos (poniendo el
  242. emulador  como Default Tool), arregla unos pocos problemas (como el del teclado
  243. con el Profanation) y es más legal con el sistema.
  244.  
  245.    También  incluye  un  script  ARexx para desensamblar porciones de memoria y
  246. otro para descomponer ficheros .TAP.
  247.  
  248.    Esta  es,  probablemente,  la  última  versión  solo  48k.  En el momento de
  249. escribir   esto,   ya  tengo  una  pre-versión  del  emulador  con  el  +3BASIC
  250. funcionando... ;-)
  251.  
  252.  
  253.        >>>>>>>>>>>>>>> AÑADIDO PARA VERSION 1.6b <<<<<<<<<<<<<<<<<<
  254.  
  255.    Versión  creada  tras descubrir un error en la carga de algunos programas en
  256. formato Z80 (un bug! esto no puede ser!!). Para justificar una nueva versión le
  257. he  añadido  además  10  comandos  ARexx nuevos (entre ellos el ZXAMTrace() que
  258. permite  ejecutar  instrucciones  paso-a-paso, y el ZXAMBreakPoint() con la que
  259. puedes  poner  puntos  de  ruptura en los programas), puede cargar programas en
  260. formato  KGB  y  arregla  el problema del Sabre Wulf con el rinoceronte. Con el
  261. emulador  se  incluye un script ARexx (Monitor.zxam, creado por Leonardo Cocaña
  262. Galán)  que  muestra  algunas  de las posibilidades del puerto ARexx para crear
  263. desensambladores/monitores.
  264.  
  265.    Para  sacar  esta  versión he interrumpido el desarrollo de la versión 128k,
  266. pero vuelvo a estar en ello...
  267.